import { DEBUG } from "cc/env";
import IPlatform from "./IPlatform";

/*****************************
 *@file: QunHeiPlatform
 *@author: 陈吕唐
 *@desc: 群黑平台
 *@date: 2024-03-04	15:30
 *****************************/
export default class QunHeiPlatform implements IPlatform {
    /****************************************************************************************************************
     *Readonly 常量
     ****************************************************************************************************************/
    /****************************************************************************************************************
     *Property 定义变量
     ****************************************************************************************************************/
    /****************************************************************************************************************
     * Lifecycle 生命周期相关方法
     ****************************************************************************************************************/
    /****************************************************************************************************************
     * Public 公有方法
     ****************************************************************************************************************/
    public getOpenID(): Promise<string> {

        /**
         * 从浏览器获取用户数据
         */
        let query: string = window.location.search.substring(1);

        if (DEBUG) {
            let testUsername: string = "123456789";
            query = "username=" + testUsername + "&qhchannel=qunhei_1635405318_7154417_0_2_30_1_18817f5d3062281e4e92badb24836007_90b3ae82b637be39fad3db236531899c_1" + "&serverid=1&time=1342123&isadult=1&nname=张晓珊&unid=test123&flag=test1&showbtn=1&usertag=qunhei&uimg=xxxx";
        }



        let promise: Promise<string> = new Promise((resolve, reject) => {
            let username = this.getQueryVariable("username", query);
            resolve(username);
        });

        return promise;
    }
    /****************************************************************************************************************
     * private 私有方法
     ****************************************************************************************************************/
    /**
     * 获取URL参数
     * @param variable 
     * @param query 
     * @returns 
     */
    private getQueryVariable(variable, query: string) {
        var vars = query.split("&");
        for (var i = 0; i < vars.length; i++) {
            var pair = vars[i].split("=");
            if (pair[0] == variable) {
                return pair[1];
            }
        }
        return "";
    }
    /****************************************************************************************************************
     * Property Get && Set 属性的 get && set 函数
     ****************************************************************************************************************/

}